﻿$(function () {
    /*
    *思路大概是先为每一个required添加必填的标记，用each()方法来实现。
    *在each()方法中先是创建一个元素。然后通过append()方法将创建的元素加入到父元素后面。
    *这里面的this用的很精髓，每一次的this都对应着相应的input元素，然后获取相应的父元素。
    *然后为input元素添加失去焦点事件。然后进行用户名、邮件的验证。
    *这里用了一个判断is()，如果是用户名，做相应的处理，如果是邮件做相应的验证。
    *在jQuery框架中，也可以适当的穿插一写原汁原味的javascript代码。比如验证用户名中就有this.value，和this.value.length。对内容进行判断。
    *然后进行的是邮件的验证，貌似用到了正则表达式。
    *然后为input元素添加keyup事件与focus事件。就是在keyup时也要做一下验证，调用blur事件就行了。用triggerHandler()触发器，触发相应的事件。
    *最后提交表单时做统一验证
    *做好整体与细节的处理
    */
    //如果是必填的，则加红星标识.
    $("form :input.required").each(function () {
        var $required = $("<strong class='high'> *</strong>"); //创建元素
        $(this).parent().append($required); //然后将它追加到文档中
    });
    //文本框失去焦点后
    $('form :input').blur(function () {
        var $parent = $(this).parent();
        $parent.find(".formtips").remove();

        //验证码验证
        if ($(this).is('#reg_code')) {
            if (this.value == "" || this.value.length != 5) {
                var errorMsg = '请输入5位的验证码.';
                $parent.append('<span class="formtips onError">' + errorMsg + '</span>');
                //alert('------1');
            } else {
                var okMsg = '√';
                $parent.append('<span class="formtips onSuccess" style="color:#008000;" >' + okMsg + '</span>');
            }
        }
        //暂时2016-2-27注释开始
        if ($(this).is('#yzm')) {
            if (this.value == "" || this.value.length != 6) {
                var errorMsg = '请输入接收的短信验证码.';
                $parent.append('<span class="formtips onError">' + errorMsg + '</span>');
                //alert('------2');
            } else {
                var okMsg = '√';
                $parent.append('<span class="formtips onSuccess" style="color:#008000;" >' + okMsg + '</span>');
            }
        }
        //暂时2016-2-27注释结束


    }).keyup(function () {
        //$(this).triggerHandler("blur");
    }).focus(function () {
        $(this).triggerHandler("blur");
    }); //end blur


    //提交，最终验证。
    $('#sendyz').click(function () {
        $("form :input.required").trigger('blur');
        var numError = $('form .onError').length;
        if (numError) {
            return false;
        }
        //alert('tj');
        //提交数据
        $("#sendyz").attr("disabled", "disabled");
        $.ajax({
            cache: true,
            type: "POST",
            url: "/api/yzm.ashx",
            data: $('#dxyz').serialize(), // 你的formid
            async: false,
            error: function (request) {
                alert("注册失败!" + request.toString());
            },
            success: function (data) {
                if (data == 'erroryzm') {
                    alert('短信验证码错误，请输入接收的正确验证码！');
                    $("#reg_code").val('');
                    $("#send").removeAttr("disabled");
                } else if (data == "error") {
                    //否则错误提示
                    alert('注册失败，换一个账号试一试！');
                    $("#userName").val('');
                    $("#send").removeAttr("disabled");
                } else {
                    //返回用户编号
                    //alert("注册成功！请联系客服审核账户！！！");
                    //location.href = "/ApprUser.aspx?code=" + data;
                    if (data == "0") {
                        alert("您好！【刷手】恭喜您，通过短信认证，请参加考试！");
                        location.href = "/reg/smssuc.aspx?code=" + data;
                    } else {
                        alert("您好！【商家】恭喜您，通过短信认证，请前去店铺认证！");
                        location.href = "/reg/smssuc.aspx?code=" + data;
                    }

                }
            }
        });
    });
})
